package com.anttribe.components.db.sql.format;

import lombok.Builder;
import lombok.Getter;

/**
 * @author zhaoyong
 * @date 2021/11/18 0018
 */
public interface SqlFormatter {

    /**
     * 分号“;”
     */
    String SYMBOL_SEMICOLON = ";";

    /**
     * 换行
     */
    String SYMBOL_WRAPPING_LINE = "\n";

    /**
     * tab
     */
    String SYMBOL_TAB = "\t";

    @Builder
    @Getter
    class FormatOptions {

        /**
         * 是否添加分号“;”结束符
         */
        @Builder.Default
        protected boolean endWithSemicolon = Boolean.TRUE;

        /**
         * 美化SQL
         */
        @Builder.Default
        protected boolean prettyFormat = Boolean.FALSE;

    }

}
